package com.antler.smt.admin.mapper;

import com.antler.smt.entity.UserRoleEntity;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 用户角色信息Mapper
 *
 * @author vic
 * @date 2018-03-19 20:15
 */
@Repository
public interface UserRoleInfoMapper {
    /**
     * 新增用户角色
     *
     * @param req 请求实体
     * @return 影响行数
     */
    Integer addUserRole(UserRoleEntity req);

    /**
     * 删除用户角色
     *
     * @param userId 用户id
     * @return 影响行数
     */
    Integer deleteUserRole(Long userId);

    /**
     * 批量删除用户
     *
     * @param userIds 用户id
     * @return 影响行数
     */
    Integer batchDeleteUserRole(List<Long> userIds);

    /**
     * 检查角色是否被使用
     *
     * @param roleId 角色id
     * @return 影响行数
     */
    Integer checkRoleHasUsed(Long roleId);

    /**
     * 检查用户是否被赋予角色
     *
     * @param userId 用户id
     * @return 影响行数
     */
    Integer checkUserHasRole(Long userId);
}